import MyCustomTable.*;
import MyUtil.DataBaseUtil;
import MyUtil.MyPanel;

import javax.swing.*;
import java.sql.*;

public class Manager_View extends JFrame{
    private String Eaccount;

    private JMenuBar menu_bar;
    //四个一级菜单
    private JMenu jmenu1;  //跟库存有关
    private JMenu jmenu2;  //跟库存有关
    private JMenu jmenu3;  //跟库存有关
    private JMenu jmenu4;  //跟库存有关

    //jmenu1的项目
    private JMenuItem jmenu1_item1;
    private JMenuItem jmenu1_item2;
    private JMenuItem jmenu1_item3;
    //jmenu2的项目
    private JMenuItem jmenu2_item1;
    private JMenuItem jmenu2_item2;
    private JMenuItem jmenu2_item3;
    //jmenu3的项目
    private JMenuItem jmenu3_item1;
    private JMenuItem jmenu3_item2;
    //jmenu4的项目
    private JMenuItem jmenu4_item1;
    private JMenuItem jmenu4_item2;
    private JMenuItem jmenu4_item3;

    private JPanel myPanel;
    public Manager_View(){
    }
    public Manager_View(String Ename,String Eaccount){
        //基础设定
        this.Eaccount = Eaccount;
        this.setTitle("你好,管理员"+Ename);
        this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
        this.setBounds(500,100,800,700);
        this.setVisible(true);
        myPanel = new MyPanel("/picture/1.jpg");
        this.setContentPane(myPanel);
        //菜单箱
        menu_bar = new JMenuBar();
        this.setJMenuBar(menu_bar);
        //一级菜单
        jmenu1 = new JMenu("信息查看与管理");
        jmenu2 = new JMenu("销售列表");
        jmenu3 = new JMenu("会员及折扣");
        jmenu4 = new JMenu("管理");
        menu_bar.add(jmenu1);
        menu_bar.add(jmenu2);
        menu_bar.add(jmenu3);
        menu_bar.add(jmenu4);
       //菜单一
        jmenu1_item1 = new JMenuItem("查看库存");
        jmenu1_item2 = new JMenuItem("动态查询");
        jmenu1_item3 = new JMenuItem("查询顾客");
        jmenu1.add(jmenu1_item1);
        jmenu1.add(jmenu1_item2);
        jmenu1.add(jmenu1_item3);
        jmenu1_item1.addActionListener((e)->{
            try {
                jmenu1_item1_method();
            } catch (SQLException ex) {
                ex.printStackTrace();
            }
        });
        jmenu1_item2.addActionListener((e)->{
            try {
                jmenu1_item2_method();
            } catch (SQLException ex) {
                ex.printStackTrace();
            }
        });
        jmenu1_item3.addActionListener((e)->{
            try {
                jmenu1_item3_method();
            } catch (SQLException ex) {
                ex.printStackTrace();
            }
        });

        //菜单二
        jmenu2_item1 = new JMenuItem("查看总销售列表");
        jmenu2_item2 = new JMenuItem("按时间查询(可导出)");
        jmenu2_item3 = new JMenuItem("生成畅销书表(可导出)");
        jmenu2.add(jmenu2_item1);
        jmenu2.add(jmenu2_item2);
        jmenu2.add(jmenu2_item3);
        jmenu2_item1.addActionListener((e)->{
            try {
                jmenu2_item1_method();
            } catch (SQLException ex) {
                ex.printStackTrace();
            }
        });
        jmenu2_item2.addActionListener((e)->{
            try {
                jmenu2_item2_method();
            } catch (SQLException ex) {
                ex.printStackTrace();
            }
        });
        jmenu2_item3.addActionListener((e)->{
            try {
                jmenu2_item3_method();
            } catch (SQLException ex) {
                ex.printStackTrace();
            }
        });

        //菜单三
        jmenu3_item1 = new JMenuItem("授予修改会员");
        jmenu3_item2 = new JMenuItem("设置折扣额度");
        jmenu3.add(jmenu3_item1);
        jmenu3.add(jmenu3_item2);
        jmenu3_item1.addActionListener((e)->{
            try {
                jmenu3_item1_method();
            } catch (SQLException ex) {
                ex.printStackTrace();
            }
        });
        jmenu3_item2.addActionListener((e)->{
            try {
                jmenu3_item2_method();
            } catch (SQLException ex) {
                ex.printStackTrace();
            }
        });
        //菜单四
        jmenu4_item1 = new JMenuItem("员工权限设置");
        jmenu4_item2 = new JMenuItem("修改密码");
        jmenu4_item3 = new JMenuItem("添加员工");
        jmenu4.add(jmenu4_item1);
        jmenu4.add(jmenu4_item2);
        jmenu4.add(jmenu4_item3);
        jmenu4_item1.addActionListener((e)->{
            try {
                jmenu4_item1_method();
            } catch (SQLException ex) {
                ex.printStackTrace();
            }
        });
        jmenu4_item2.addActionListener((e)->{
            try {
                jmenu4_item2_method();
            } catch (SQLException ex) {
                ex.printStackTrace();
            }
        });
        jmenu4_item3.addActionListener((e)->{
            try {
                jmenu4_item3_method();
            } catch (SQLException ex) {
                ex.printStackTrace();
            }
        });
    }
    public void jmenu1_item1_method() throws SQLException {
        String sql = "select * from Book";
        new Book_restNumber_query(sql);
    }
    public void jmenu1_item2_method() throws SQLException {
        new Book_dynamicQuery("动态查询").setVisible(true);
    }
    public void jmenu1_item3_method() throws SQLException {
        new Customer_Query_ResultSet("查看顾客").setVisible(true);
    }
    public void jmenu2_item1_method() throws SQLException {
        String sql = "select * from Pay_List";
        new Pay_List_ResultSet(sql);
    }
    public void jmenu2_item2_method() throws SQLException {
        new Pay_List_DynamicQuery(this).setVisible(true);
    }
    public void jmenu2_item3_method() throws SQLException {
        new Best_Selling_Book_List().setVisible(true);
    }
    public void jmenu3_item1_method() throws SQLException {
        new Member_Level_Set();
    }
    public void jmenu3_item2_method() throws SQLException {
        new Member_discount_Set();
    }
    public void jmenu4_item1_method() throws SQLException {
        new Manager_Author_Set();
    }
    public void jmenu4_item2_method() throws SQLException {
        new Manager_password_Set(Eaccount);
    }
    public void jmenu4_item3_method() throws SQLException {
        new Manager_addEmployee();
    }
}
